iT邦幫忙

2021 iThome 鐵人賽

DAY 4
0
自我挑戰組

你遲早都要懂後端的 — Node.js 的學習筆記系列 第 4

#4 - The Global Object &Function Expressions

  • 分享至 

  • xImage
  •  

今天來講講兩個之後會用到的兩個小觀念: The Global Object &Function Expressions

#The Global Object

當我們寫 JavaScript 的時候,The Global Object (下面稱全域物件) = window ,我們可以從這個 window 物件裡取用屬性和方法,像是alert()scroll()setTimeout()等等。

而在 node.js 中,因為我們不在瀏覽器的關係,全域物件不再是 window 而是 global 。這個 globalwindow 一樣,也有許多的屬性和方法讓我們取用。

#Function Expressions

首先,我們從 Statement (陳述式) 與 Expression (表達式)開始說起。
簡單來說,兩個的差別在於:
Statement :不會產生值,像是變數宣告、流程控制等等

Expression:會產生一個值,像是邏輯(true or false)、賦值(let a = 100)等等

這篇很讚,講的超詳細!

而對 function 而言,所謂的 Function Statement 會長這樣:

function sayHi(){
    console.log('hi')
}

這個sayHi function 並不會產生任何的值,因此他是一個 Statement。

而 Function Expressions 則會這樣寫:

let sayBye = function(){
    console.log('bye')
}

從上面的程式碼我們可以看到,我們很明顯的賦值給一個變數 sayBye 了,我們透過 sayBye() 去invoke。
Function Expressions 在 node.js 中十分的常見,但其實也不太難不要被嚇到了,我們就想像它就是指後面那團東西就好惹!

另外一個常見於 node.js 中的是 將一個 function 當作參數傳入另一個 function 中,像下面這樣:

function callFuction(func){
  func()
}

let sayBye = function(){
    console.log('bye')
}

callFuction(sayBye)

今天的學習就到這邊,我們明天見囉!


上一篇
#3 The V8 Engine
下一篇
#5 -Modules and require()
系列文
你遲早都要懂後端的 — Node.js 的學習筆記10
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言